Unless otherwise indicated herein, the materials described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
With the advance of networking and data storage technologies, an increasingly large number of computing services are being provided to users or customers by cloud based datacenters that can enable leased access to computing resources at various levels. Datacenters can provide individuals and organizations with a range of solutions for systems deployment and operation. Depending on customer needs, datacenter capabilities, and associated costs, services provided to customers may be defined by Service Level Agreements (SLAs) describing aspects such as server latency, storage limits or quotas, processing power, scalability factors, backup guarantees, uptime guarantees, resource usage reporting, and similar ones.
Not all cloud architectures are similar in terms of scope and performance requirements. For example, a cloud based email or photo sharing application is likely to have different operating parameters compared to a cloud based video gaming service. The underlying cloud platform software may also be different. When a customer decides to move its data and/or applications from one cloud to another (e.g., from one datacenter to another), the process may be relatively cumbersome due to lack of methods to formalize, normalize, and communicate computing requirements across clouds.